package com.by.pojo;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.by.common.group.Save;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.util.Date;
import java.io.Serializable;

/**
 * (PurApplicationDetails)实体类
 *
 * @author makejava
 * @since 2024-01-09 11:11:58
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
@ApiModel("采购申请明细实体类")
@TableName("pur_application_details")
public class PurApplicationDetails implements Serializable {
    /**
     * 主键id
     */
    @ApiModelProperty("id")
    @TableId(value = "id",type = IdType.ASSIGN_UUID)
    private String id;
    /**
     * 产品名称
     */
    @ApiModelProperty("产品名称")
    @NotBlank(message = "产品名称不能为空",groups = {Save.class})
    @TableField("proName")
    private String proName;
    /**
     * 产品编号
     */
    @ApiModelProperty("产品编号")
    @TableField("proCode")
    private String proCode;
    /**
     * 规格型号
     */
    @ApiModelProperty("规格型号")
    private String specs;
    /**
     * 单位
     */
    @ApiModelProperty("单位")
    private String unit;
    /**
     * 供应商编号
     */
    @ApiModelProperty("供应商编号")
    @TableField("supCode")
    private String supCode;
    /**
     * 数量
     */
    @ApiModelProperty("数量")
    @NotNull(message = "数量不能为空",groups = {Save.class})
    private Integer number;
    /**
     * 单价
     */
    @ApiModelProperty("单价")
    @NotNull(message = "单价不能为空",groups = {Save.class})
    private Double price;
    /**
     * 总金额
     */
    @ApiModelProperty("总金额")
    @TableField("totalAmount")
    private Double totalAmount;
    /**
     * 需要日期
     */
    @ApiModelProperty("需要日期")
    @TableField("needDate")
    private String needDate;
    /**
     * 备注
     */
    @ApiModelProperty("备注")
    private String note;
    /**
     * 询价状态：
     * 1.待询价
     * 2.询价中
     * 3.询价完成
     * 4.无需询价
     */
    @ApiModelProperty("询价状态：1.待询价 2.询价中 3.询价完成 4.无需询价")
    @TableField("inquireStatus")
    private Integer inquireStatus;
    /**
     * 采购状态：
     * 1.未采购
     * 2.部分采购
     * 3.采购完成
     */
    @ApiModelProperty("采购状态：1.未采购 2.部分采购 3.采购完成")
    @TableField("applicationStatus")
    private Integer applicationStatus;
    /**
     * purNum
     */
    @ApiModelProperty("采购数量")
    @TableField("purNum")
    private Integer purNum;
    /**
     * 采购申请编号
     */
    @ApiModelProperty("采购申请编号")
    @NotBlank(message = "采购申请编号不能为空",groups = {Save.class})
    @TableField("applicationCode")
    private String applicationCode;
    /**
     * 数据创建时间
     */
    @ApiModelProperty("数据创建时间")
    @TableField("createTime")
    private Date createTime;
    /**
     * 数据跟新时间
     */
    @ApiModelProperty("数据跟新时间")
    @TableField("updateTime")
    private Date updateTime;
    /**
     * 逻辑删除：0.未删除 1.已删除
     */
    @ApiModelProperty("逻辑删除:0.未删除 1.已删除")
    private int isdel;

















}

